import re

str1 = '这是一段包含数字的字符串 123456，可以使用正则表达式提取数字'

# 定义正则表达式
pattern = r'\d+'

# 匹配字符串中的数字
match_obj = re.findall(pattern, str1)

# 输出匹配结果
print(match_obj)
# 代码中，使用re.findall函数匹配字符串中的数字，匹配规则由正则表达式r’\d+’定义，\d表示匹配数字，+表示匹配前面的1个或多个数字。执行上述代码后，输出结果为['123456']。


##################################################################################
# 如果需要提取多组数字，只需要修改正则表达式的定义即可。例如，需要提取下面字符串中的数字：
str2 = 'Python是一门流行的编程语言，目前最新版本是Python 3.10，发布于2021年10月4日'
# 该字符串中包含两组数字，分别是3.10和2021年10月4日。可以使用r’\d+.\d+’匹配版本号，使用r’\d{4}年\d{1,2}月\d{1,2}日’匹配日期信息。具体的代码实现如下
# 定义正则表达式
pattern1 = r'\d+\.\d+'
pattern2 = r'\d{4}年\d{1,2}月\d{1,2}日'

# 匹配字符串中的数字
match_obj1 = re.findall(pattern1, str2)
match_obj2 = re.findall(pattern2, str2)

# 输出匹配结果
print(match_obj1)
print(match_obj2)
